<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>函数中的arguments是数组吗</title>
	<link rel="stylesheet" href="">
</head>
<body>
<!-- 
函数中的arguments是数组吗
类数组转数组的方法了解一下？
 -->
<script>
	function arg() {
		console.log(arguments);
	}
	arg(1,2,3,4,5);
/**
arguments其实是一个对象，它与数组一样有索引以及length的属性。但是却不能使用数组的方法。

但是在实际开发中，我们使用arguments可以很方便的获取到所有的实参，并且也需要对其使用是写数组的方法。
 */
// 1
function arg(){
	var arr = []
	for(var i=0;i<arguments.length;i++){
		arr.push(arguments[i])
	}

	return arr;
}
console.log(arg("Ken","name","age"))

// 2
function arg() {
	return [].slice.call(arguments);
}
console.log(arg(1,2,3,4,5,6,7))

// ...arguments
function arg(){
	return [...arguments];
}

console.log(arg(1,2,3,4,5,6,7,8))

// Array.from(arguments)
function arg() {
	return Array.from(arguments)
}

console.log(arg(1,2,3,4,5))
</script>
</body>
</html>